package org.jeecgframework.web.system.pojo.base;

import javax.persistence.CascadeType;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;

import org.hibernate.annotations.GenericGenerator;
import org.jeecgframework.poi.excel.annotation.Excel;

/**   
 * @Title: Entity
 * @Description: 备件更换记录
 * @author ZhangYunlong
 * @date 2016-04-01
 * @version V1.0   
 *
 */
@Entity
@Table(name = "zy_spare_record", schema = "")
@SuppressWarnings("serial")
public class ZySpareRecordEntity implements java.io.Serializable {
	/**主键*/
	private java.lang.String id;
	/**设备SN*/
	@Excel(name="设备SN")
	private String equipmentSn;
	/**影院ID*/
	@Excel(name="影院ID")
	private ZyCinemaEntity cinemaId;
	/**旧备件备件号*/
	@Excel(name="旧备件备件号")
	private java.lang.String oldSpareNo;
	/**旧备件序列号SN*/
	@Excel(name="旧备件序列号SN")
	private java.lang.String oldSpareSn;
	/**备件描述*/
	@Excel(name="备件描述")
	private ZyEquipmentTypeEntity spareDesc;
	/**更换日期*/
	@Excel(name="更换日期")
	private java.util.Date replaceDate;
	/**新备件备件号*/
	@Excel(name="新备件备件号")
	private java.lang.String newSpareNo;
	/**新备件序列号SN*/
	@Excel(name="新备件序列号SN")
	private java.lang.String newSpareSn;
	/**更换原因*/
	@Excel(name="更换原因")
	private java.lang.String replaceReason;
	/**备注*/
	@Excel(name="备注")
	private java.lang.String remark;
	/**关联服务单据号*/
	@Excel(name="关联服务单据号")
	private java.lang.String relationServiceNo;
	/**创建人名称*/
	private java.lang.String createName;
	/**创建人登录名称*/
	private java.lang.String createBy;
	/**创建日期*/
	private java.util.Date createDate;
	/**更新人名称*/
	private java.lang.String updateName;
	/**更新人登录名称*/
	private java.lang.String updateBy;
	/**更新日期*/
	private java.util.Date updateDate;
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  主键
	 */
	@Id
	@GeneratedValue(generator = "paymentableGenerator")
	@GenericGenerator(name = "paymentableGenerator", strategy = "uuid")
	@Column(name ="ID",nullable=false,length=36)
	public java.lang.String getId(){
		return this.id;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  主键
	 */
	public void setId(java.lang.String id){
		this.id = id;
	}
	
	@Column(name="equipment_sn",nullable=true,length=50)
	public String getEquipmentSn() {
		return equipmentSn;
	}

	public void setEquipmentSn(String equipmentSn) {
		this.equipmentSn = equipmentSn;
	}
	
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  影院ID
	 */
	@ManyToOne(cascade=CascadeType.DETACH,fetch=FetchType.EAGER)
    @JoinColumn(name="CINEMA_ID")
//	@Column(name ="CINEMA_ID",nullable=true,length=32)
	public ZyCinemaEntity getCinemaId(){
		return this.cinemaId;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  影院ID
	 */
	public void setCinemaId(ZyCinemaEntity cinemaId){
		this.cinemaId = cinemaId;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  旧备件备件号
	 */
	@Column(name ="OLD_SPARE_NO",nullable=true,length=32)
	public java.lang.String getOldSpareNo(){
		return this.oldSpareNo;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  旧备件备件号
	 */
	public void setOldSpareNo(java.lang.String oldSpareNo){
		this.oldSpareNo = oldSpareNo;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  旧备件序列号SN
	 */
	@Column(name ="OLD_SPARE_SN",nullable=true,length=32)
	public java.lang.String getOldSpareSn(){
		return this.oldSpareSn;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  旧备件序列号SN
	 */
	public void setOldSpareSn(java.lang.String oldSpareSn){
		this.oldSpareSn = oldSpareSn;
	}
	
	/**
	 *方法: 取得ZyEquipmentTypeEntity
	 *@return: ZyEquipmentTypeEntity  备件描述
	 */
	@ManyToOne(cascade=CascadeType.DETACH,fetch=FetchType.EAGER)
	@JoinColumn(name ="SPARE_DESC")
	public ZyEquipmentTypeEntity getSpareDesc(){
		return this.spareDesc;
	}

	/**
	 *方法: 设置ZyEquipmentTypeEntity
	 *@param: ZyEquipmentTypeEntity 备件描述
	 */
	public void setSpareDesc(ZyEquipmentTypeEntity spareDesc){
		this.spareDesc = spareDesc;
	}
	
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  更换日期
	 */
	@Column(name ="REPLACE_DATE",nullable=true,length=32)
	public java.util.Date getReplaceDate(){
		return this.replaceDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  更换日期
	 */
	public void setReplaceDate(java.util.Date replaceDate){
		this.replaceDate = replaceDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  新备件备件号
	 */
	@Column(name ="NEW_SPARE_NO",nullable=true,length=32)
	public java.lang.String getNewSpareNo(){
		return this.newSpareNo;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  新备件备件号
	 */
	public void setNewSpareNo(java.lang.String newSpareNo){
		this.newSpareNo = newSpareNo;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  新备件序列号SN
	 */
	@Column(name ="NEW_SPARE_SN",nullable=true,length=32)
	public java.lang.String getNewSpareSn(){
		return this.newSpareSn;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  新备件序列号SN
	 */
	public void setNewSpareSn(java.lang.String newSpareSn){
		this.newSpareSn = newSpareSn;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更换原因
	 */
	@Column(name ="REPLACE_REASON",nullable=true,length=32)
	public java.lang.String getReplaceReason(){
		return this.replaceReason;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更换原因
	 */
	public void setReplaceReason(java.lang.String replaceReason){
		this.replaceReason = replaceReason;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  备注
	 */
	@Column(name ="REMARK",nullable=true,length=32)
	public java.lang.String getRemark(){
		return this.remark;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  备注
	 */
	public void setRemark(java.lang.String remark){
		this.remark = remark;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  关联服务单据号
	 */
	@Column(name ="RELATION_SERVICE_NO",nullable=true,length=32)
	public java.lang.String getRelationServiceNo(){
		return this.relationServiceNo;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  关联服务单据号
	 */
	public void setRelationServiceNo(java.lang.String relationServiceNo){
		this.relationServiceNo = relationServiceNo;
	}
	
	
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人名称
	 */
	@Column(name ="CREATE_NAME",nullable=true,length=50)
	public java.lang.String getCreateName(){
		return this.createName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人名称
	 */
	public void setCreateName(java.lang.String createName){
		this.createName = createName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  创建人登录名称
	 */
	@Column(name ="CREATE_BY",nullable=true,length=50)
	public java.lang.String getCreateBy(){
		return this.createBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  创建人登录名称
	 */
	public void setCreateBy(java.lang.String createBy){
		this.createBy = createBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  创建日期
	 */
	@Column(name ="CREATE_DATE",nullable=true,length=20)
	public java.util.Date getCreateDate(){
		return this.createDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  创建日期
	 */
	public void setCreateDate(java.util.Date createDate){
		this.createDate = createDate;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人名称
	 */
	@Column(name ="UPDATE_NAME",nullable=true,length=50)
	public java.lang.String getUpdateName(){
		return this.updateName;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人名称
	 */
	public void setUpdateName(java.lang.String updateName){
		this.updateName = updateName;
	}
	/**
	 *方法: 取得java.lang.String
	 *@return: java.lang.String  更新人登录名称
	 */
	@Column(name ="UPDATE_BY",nullable=true,length=50)
	public java.lang.String getUpdateBy(){
		return this.updateBy;
	}

	/**
	 *方法: 设置java.lang.String
	 *@param: java.lang.String  更新人登录名称
	 */
	public void setUpdateBy(java.lang.String updateBy){
		this.updateBy = updateBy;
	}
	/**
	 *方法: 取得java.util.Date
	 *@return: java.util.Date  更新日期
	 */
	@Column(name ="UPDATE_DATE",nullable=true,length=20)
	public java.util.Date getUpdateDate(){
		return this.updateDate;
	}

	/**
	 *方法: 设置java.util.Date
	 *@param: java.util.Date  更新日期
	 */
	public void setUpdateDate(java.util.Date updateDate){
		this.updateDate = updateDate;
	}
}
